// IProtocol645Manager.aidl
package com.sgcc.pda.hw;
import com.sgcc.pda.hw.ReturnResult;
import com.sgcc.pda.hw.ISealCallback;
// Declare any non-default types here with import statements

interface ISealManager {

    /**
    * 读取指定地址数据
    *sealKid 密钥Kid A区:01  B区:02
    * addr A区:8-32  B区:48-64 多条;隔开
    */
    ReturnResult readByAddr(String sealKid,String addr);

    /**
    * 读取
    *sealKid 密钥Kid A区:01  B区:02
    */
    ReturnResult read(String sealKid);
    /**
    * 写入
    * sealKeyType   00为公钥权限   01 为私钥权限
    * sealNo        封印序列号 读取标签地址为8的后16位
    * data          要写入的数据 写入的数据 多条;隔开
    * sealDataAdd   数据地址 写入地址 多条;隔开 对应data
    */
    void write(String sealKeyType,String sealNo,String data, String sealDataAdd,in ISealCallback sealCallback);
    /**
    * 更新秘钥权限
    * updateType    秘钥更新类型 01为发行   00 为清除
    * sealNo        封印序列号 读取标签地址为8的后16位
    */
    void update(String updateType, String sealNo,in ISealCallback sealCallback);

}
